﻿//---------------------------------------------------------------------------------
// Copyright 2011 Microsoft Corporation
// Licensed under the Microsoft Public License (MS-PL) (the "License"); 
// You may not use this file except in compliance with the License. 
// You may obtain a copy of the License at http://www.opensource.org/licenses/ms-pl.html
// THIS CODE IS PROVIDED *AS IS* BASIS, WITHOUT WARRANTIES OR 
// CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, 
// INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR 
// CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, 
// MERCHANTABLITY OR NON-INFRINGEMENT. 
// See the Microsoft Public License (MS-PL) for the specific language governing 
// permissions and limitations under the License.
//---------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;

namespace Microsoft.Telco.Web.Contracts
{
    /// <summary>
    /// Represents an SMS
    /// </summary>
    [DataContract(Namespace = Namespaces.V1)]
    public class MultimediaMessage
    {
        /// <summary>
        /// Gets or set the content id for this attachment
        /// </summary>
        /// <value>The id</value>
        [DataMember]
        public string ContentId { get; set; }

        /// <summary>
        /// Gets or set the MIME type for this attachment
        /// </summary>
        /// <value>The MIME type</value>
        [DataMember]
        public string MimeType { get; set; }

        /// <summary>
        /// Gets or set the encoding type for this attachment
        /// </summary>
        /// <value>The encoding type</value>
        [DataMember]
        public string EncodingType { get; set; }

        /// <summary>
        /// Gets or sets the received.
        /// </summary>
        /// <value>The received.</value>
        [DataMember]
        public DateTime Received { get; set; }

        /// <summary>
        /// Gets or sets the sent.
        /// </summary>
        /// <value>The sent.</value>
        [DataMember]
        public DateTime Sent { get; set; }

        /// <summary>
        /// Gets or sets from.
        /// </summary>
        /// <value>From.</value>
        [DataMember]
        public string From { get; set; }

        /// <summary>
        /// Gets or sets to.
        /// </summary>
        /// <value>To.</value>
        [DataMember]
        public string To { get; set; }

        /// <summary>
        /// Gets or sets the content.
        /// </summary>
        /// <value>The content.</value>
        [DataMember]
        public byte[] Content { get; set; }
    }
}
